package com.shiro.shiroforadmin.utils;

import com.auth0.jwt.JWT;
import com.auth0.jwt.algorithms.Algorithm;
import com.shiro.shiroforadmin.pojo.Admin;

import java.util.Date;

public class TokenTools {
    //生成token密文的函数
    public static String getToken(Admin admin) {
        Date start = new Date();//开始生效时间
        long currentTime = System.currentTimeMillis() + 24 * 60 * 60 * 1000;//二十四小时有效时间(根据项目要求)
        Date end = new Date(currentTime); //失效时间
        //在这里使用了用户的username和password以生成一个token
        String token = JWT.create().withAudience(admin.getUsername()).withIssuedAt(start).withExpiresAt(end)
                .sign(Algorithm.HMAC256(admin.getPassword()));
        return token;
    }
}
